package com.moxiao.yfjh.module.order.dal.dataobject.payRecord;

import lombok.*;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.moxiao.yfjh.framework.mybatis.core.dataobject.BaseDO;

/**
 * 支付记录 DO
 *
 * @author mx
 */
@TableName("blind_pay_record")
@KeySequence("blind_pay_record_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PayRecordDO extends BaseDO {

    /**
     * 编号
     */
    @TableId
    private Long id;
    /**
     * 支付订单号（系统生成的唯一的订单号）
     */
    private String outtradeno;
    /**
     * 模块描述
     */
    private String modulardescribe;
    /**
     * 交易类型：支付、退款
     */
    private String type;
    /**
     * 操作用户id，支付者、退款者
     */
    private Long userid;
    /**
     * 支付方式：微信、支付宝、银联
     */
    private String payway;
    /**
     * 订单描述
     */
    private String description;
    /**
     * 支付订单结束时间，此时间后订单作废
     */
    private LocalDateTime expiretime;
    /**
     * 支付金额
     */
    private Long paymoney;
    /**
     * 关联业务数据id，账单表id
     */
    private String dataid;
    /**
     * 预支付交易会话标识
     */
    private String prepayid;
    /**
     * 支付状态：1、支付成功 2、转入退款 3、未支付 4、已关闭 5、已撤销（付款码支付）6、用户支付中（付款码支付）7、支付失败(其他原因，如银行返回失败) 11、退款成功 12、退款关闭 13、退款异常，退款到银行发现用户的卡作废或者冻结了，导致原路退款银行卡失败，可前往【商户平台—>交易中心】，手动处理此笔退款
     */
    private Long paystate;
    /**
     * 订单创建时间
     */
    private LocalDateTime establishdate;
    /**
     * 支付时间
     */
    private LocalDateTime paydate;
    /**
     * 支付确认时间
     */
    private LocalDateTime confirmdate;
    /**
     * 回调的id
     */
    private String callbackid;
    /**
     * 回调的摘要
     */
    private String summary;
    /**
     * 支付平台生成的订单号（微信、支付宝）
     */
    private String transactionid;
    /**
     * 交易类型
     */
    private String tradetype;
    /**
     * 状态
     */
    private Byte status;

}
